package com.oig.sys.workflow.flow;

import com.oig.sys.workflow.vo.InstanceAllInfoVo;
import com.oig.sys.workflow.vo.FlowConfigVo;
import com.oig.sys.workflow.vo.FlowInstanceVo;

public interface IDepFlowService {

    FlowConfigVo queryFlowDefine(String flowCode) ;


    boolean subscribe(String flowCode);

    boolean unsubscribe(String flowCode);

    String createInstance(FlowConfigVo flowConfigVo, FlowInstanceVo flowInstanceVo) throws Exception;


    void cancelInstance(String flowCode, String instanceId, String userId) throws Exception;


    InstanceAllInfoVo getInstance(String instanceId, String userId);


    void startListener();


}
